using System;
using Curriculum.Business.Manejadores;
using Modelo = Curriculum.Business.ClasesPersistentes;
using SincroCliente.SincroServices;

namespace SincroCliente
{
	/// <summary>
	/// Summary description for SubirAlServer.
	/// </summary>
	public abstract class ActualizadorDeDatos
	{
		protected SincronizadorService _service;

		public ActualizadorDeDatos() 
		{
			_service = new SincronizadorService();
			_service.Credentials = System.Net.CredentialCache.DefaultCredentials;
		}

		internal abstract void Ejecutar();

		public abstract string GetDescripcionDatosActualizados();		

		protected Modelo.CredencialesUsuario GetUsuario()
		{
			return ManejadorUsuario.GetInstancia().CredencialesUsuario;
		}


		protected CredencialesUsuario GetUsuarioSerializable()
		{
			Modelo.CredencialesUsuario credencialesUsuario = ManejadorUsuario.GetInstancia().CredencialesUsuario;
		
			CredencialesUsuario credencialesUsuarioSer = new CredencialesUsuario();			
			credencialesUsuarioSer.userName = credencialesUsuario.UserName;
			credencialesUsuarioSer.password = credencialesUsuario.Password;

			return credencialesUsuarioSer;
		}

	}
}
